//
//  Problem179.swift
//  LeetCode
//
//  Created by 武侠 on 2023/6/27.
//  Copyright © 2023 zhulongiMac02. All rights reserved.
//

import UIKit

/*
 179. 最大数 中等

 给定一组非负整数 nums，重新排列每个数的顺序（每个数不可拆分）使之组成一个最大的整数。
 注意：输出结果可能非常大，所以你需要返回一个字符串而不是整数。
 
 示例 1：
     输入：nums = [10,2]
     输出："210"
 示例 2：
     输入：nums = [3,30,34,5,9]
     输出："9534330"

 提示：
 1 <= nums.length <= 100
 0 <= nums[i] <= 109
 */
class Problem179: NSObject {
    
    func largestNumber(_ nums: [Int]) -> String {
        let list = nums.map { String($0) }.sorted {  $0 + $1 > $1 + $0 }
        if list[0] == "0" {
            return "0"
        }
        return list.joined()
    }
}
